package com.example.entity;

import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 商家库存记录实体类
 */
@Data
public class MerchantInventoryRecord {

    /**
     * 主键ID
     */
    private Long id;

    /**
     * 记录编号
     */
    private String recordNo;

    /**
     * 商家ID（店长ID）
     */
    private Long merchantId;

    /**
     * 商家名称
     */
    private String merchantName;

    /**
     * 供货商品ID
     */
    private Long productId;

    /**
     * 店长商品ID
     */
    private Long storeProductId;

    /**
     * 商品名称
     */
    private String productName;

    /**
     * 商品编号
     */
    private String productCode;

    /**
     * 操作类型：IN-入库，OUT-出库
     */
    private String recordType;

    /**
     * 操作数量
     */
    private Integer quantity;

    /**
     * 操作前库存
     */
    private Integer beforeStock;

    /**
     * 操作后库存
     */
    private Integer afterStock;

    /**
     * 单位成本
     */
    private BigDecimal unitCost;

    /**
     * 总成本
     */
    private BigDecimal totalCost;

    /**
     * 销售价格
     */
    private BigDecimal sellingPrice;

    /**
     * 操作员ID
     */
    private Long operatorId;

    /**
     * 操作员姓名
     */
    private String operatorName;

    /**
     * 客户ID（出库时记录售给哪个客户）
     */
    private Long customerId;

    /**
     * 客户名称
     */
    private String customerName;

    /**
     * 业务类型：PURCHASE-从管理员进货，SALE-销售给客户，ADJUST-库存调整，RETURN-退货
     */
    private String businessType;

    /**
     * 关联订单ID（销售时记录）
     */
    private Long relatedOrderId;

    /**
     * 备注
     */
    private String remark;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 删除标记：0-未删除，1-已删除
     */
    private Integer deleted;
} 